package com.fc.test.model.auto;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import cn.hutool.core.util.StrUtil;
/**
 * 学生简历表 StuCvExample
 * @author DrRic_自动生成
 * @email drhyz@qq.com
 * @date 2020-07-05 17:21:51
 */
public class StuCvExample {

    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public StuCvExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }
				
        public Criteria andSidIsNull() {
            addCriterion("sid is null");
            return (Criteria) this;
        }

        public Criteria andSidIsNotNull() {
            addCriterion("sid is not null");
            return (Criteria) this;
        }

        public Criteria andSidEqualTo(Integer value) {
            addCriterion("sid =", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotEqualTo(Integer value) {
            addCriterion("sid <>", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidGreaterThan(Integer value) {
            addCriterion("sid >", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidGreaterThanOrEqualTo(Integer value) {
            addCriterion("sid >=", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLessThan(Integer value) {
            addCriterion("sid <", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLessThanOrEqualTo(Integer value) {
            addCriterion("sid <=", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLike(Integer value) {
            addCriterion("sid like", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotLike(Integer value) {
            addCriterion("sid not like", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidIn(List<Integer> values) {
            addCriterion("sid in", values, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotIn(List<Integer> values) {
            addCriterion("sid not in", values, "sid");
            return (Criteria) this;
        }

        public Criteria andSidBetween(Integer value1, Integer value2) {
            addCriterion("sid between", value1, value2, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotBetween(Integer value1, Integer value2) {
            addCriterion("sid not between", value1, value2, "sid");
            return (Criteria) this;
        }
        
			
        public Criteria andCvidIsNull() {
            addCriterion("cvid is null");
            return (Criteria) this;
        }

        public Criteria andCvidIsNotNull() {
            addCriterion("cvid is not null");
            return (Criteria) this;
        }

        public Criteria andCvidEqualTo(Integer value) {
            addCriterion("cvid =", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidNotEqualTo(Integer value) {
            addCriterion("cvid <>", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidGreaterThan(Integer value) {
            addCriterion("cvid >", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidGreaterThanOrEqualTo(Integer value) {
            addCriterion("cvid >=", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidLessThan(Integer value) {
            addCriterion("cvid <", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidLessThanOrEqualTo(Integer value) {
            addCriterion("cvid <=", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidLike(Integer value) {
            addCriterion("cvid like", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidNotLike(Integer value) {
            addCriterion("cvid not like", value, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidIn(List<Integer> values) {
            addCriterion("cvid in", values, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidNotIn(List<Integer> values) {
            addCriterion("cvid not in", values, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidBetween(Integer value1, Integer value2) {
            addCriterion("cvid between", value1, value2, "cvid");
            return (Criteria) this;
        }

        public Criteria andCvidNotBetween(Integer value1, Integer value2) {
            addCriterion("cvid not between", value1, value2, "cvid");
            return (Criteria) this;
        }
        
			
        public Criteria andPhotoIsNull() {
            addCriterion("photo is null");
            return (Criteria) this;
        }

        public Criteria andPhotoIsNotNull() {
            addCriterion("photo is not null");
            return (Criteria) this;
        }

        public Criteria andPhotoEqualTo(String value) {
            addCriterion("photo =", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoNotEqualTo(String value) {
            addCriterion("photo <>", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoGreaterThan(String value) {
            addCriterion("photo >", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoGreaterThanOrEqualTo(String value) {
            addCriterion("photo >=", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoLessThan(String value) {
            addCriterion("photo <", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoLessThanOrEqualTo(String value) {
            addCriterion("photo <=", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoLike(String value) {
            addCriterion("photo like", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoNotLike(String value) {
            addCriterion("photo not like", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoIn(List<String> values) {
            addCriterion("photo in", values, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoNotIn(List<String> values) {
            addCriterion("photo not in", values, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoBetween(String value1, String value2) {
            addCriterion("photo between", value1, value2, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoNotBetween(String value1, String value2) {
            addCriterion("photo not between", value1, value2, "photo");
            return (Criteria) this;
        }
        
			
        public Criteria andEducationIsNull() {
            addCriterion("education is null");
            return (Criteria) this;
        }

        public Criteria andEducationIsNotNull() {
            addCriterion("education is not null");
            return (Criteria) this;
        }

        public Criteria andEducationEqualTo(String value) {
            addCriterion("education =", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationNotEqualTo(String value) {
            addCriterion("education <>", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationGreaterThan(String value) {
            addCriterion("education >", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationGreaterThanOrEqualTo(String value) {
            addCriterion("education >=", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationLessThan(String value) {
            addCriterion("education <", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationLessThanOrEqualTo(String value) {
            addCriterion("education <=", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationLike(String value) {
            addCriterion("education like", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationNotLike(String value) {
            addCriterion("education not like", value, "education");
            return (Criteria) this;
        }

        public Criteria andEducationIn(List<String> values) {
            addCriterion("education in", values, "education");
            return (Criteria) this;
        }

        public Criteria andEducationNotIn(List<String> values) {
            addCriterion("education not in", values, "education");
            return (Criteria) this;
        }

        public Criteria andEducationBetween(String value1, String value2) {
            addCriterion("education between", value1, value2, "education");
            return (Criteria) this;
        }

        public Criteria andEducationNotBetween(String value1, String value2) {
            addCriterion("education not between", value1, value2, "education");
            return (Criteria) this;
        }
        
			
        public Criteria andExpPracIsNull() {
            addCriterion("exp_prac is null");
            return (Criteria) this;
        }

        public Criteria andExpPracIsNotNull() {
            addCriterion("exp_prac is not null");
            return (Criteria) this;
        }

        public Criteria andExpPracEqualTo(String value) {
            addCriterion("exp_prac =", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracNotEqualTo(String value) {
            addCriterion("exp_prac <>", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracGreaterThan(String value) {
            addCriterion("exp_prac >", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracGreaterThanOrEqualTo(String value) {
            addCriterion("exp_prac >=", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracLessThan(String value) {
            addCriterion("exp_prac <", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracLessThanOrEqualTo(String value) {
            addCriterion("exp_prac <=", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracLike(String value) {
            addCriterion("exp_prac like", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracNotLike(String value) {
            addCriterion("exp_prac not like", value, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracIn(List<String> values) {
            addCriterion("exp_prac in", values, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracNotIn(List<String> values) {
            addCriterion("exp_prac not in", values, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracBetween(String value1, String value2) {
            addCriterion("exp_prac between", value1, value2, "expPrac");
            return (Criteria) this;
        }

        public Criteria andExpPracNotBetween(String value1, String value2) {
            addCriterion("exp_prac not between", value1, value2, "expPrac");
            return (Criteria) this;
        }
        
			
        public Criteria andExpAwardIsNull() {
            addCriterion("exp_award is null");
            return (Criteria) this;
        }

        public Criteria andExpAwardIsNotNull() {
            addCriterion("exp_award is not null");
            return (Criteria) this;
        }

        public Criteria andExpAwardEqualTo(String value) {
            addCriterion("exp_award =", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardNotEqualTo(String value) {
            addCriterion("exp_award <>", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardGreaterThan(String value) {
            addCriterion("exp_award >", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardGreaterThanOrEqualTo(String value) {
            addCriterion("exp_award >=", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardLessThan(String value) {
            addCriterion("exp_award <", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardLessThanOrEqualTo(String value) {
            addCriterion("exp_award <=", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardLike(String value) {
            addCriterion("exp_award like", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardNotLike(String value) {
            addCriterion("exp_award not like", value, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardIn(List<String> values) {
            addCriterion("exp_award in", values, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardNotIn(List<String> values) {
            addCriterion("exp_award not in", values, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardBetween(String value1, String value2) {
            addCriterion("exp_award between", value1, value2, "expAward");
            return (Criteria) this;
        }

        public Criteria andExpAwardNotBetween(String value1, String value2) {
            addCriterion("exp_award not between", value1, value2, "expAward");
            return (Criteria) this;
        }
        
			
        public Criteria andGradeIsNull() {
            addCriterion("grade is null");
            return (Criteria) this;
        }

        public Criteria andGradeIsNotNull() {
            addCriterion("grade is not null");
            return (Criteria) this;
        }

        public Criteria andGradeEqualTo(String value) {
            addCriterion("grade =", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotEqualTo(String value) {
            addCriterion("grade <>", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeGreaterThan(String value) {
            addCriterion("grade >", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeGreaterThanOrEqualTo(String value) {
            addCriterion("grade >=", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeLessThan(String value) {
            addCriterion("grade <", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeLessThanOrEqualTo(String value) {
            addCriterion("grade <=", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeLike(String value) {
            addCriterion("grade like", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotLike(String value) {
            addCriterion("grade not like", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeIn(List<String> values) {
            addCriterion("grade in", values, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotIn(List<String> values) {
            addCriterion("grade not in", values, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeBetween(String value1, String value2) {
            addCriterion("grade between", value1, value2, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotBetween(String value1, String value2) {
            addCriterion("grade not between", value1, value2, "grade");
            return (Criteria) this;
        }
        
			
        public Criteria andSkillIsNull() {
            addCriterion("skill is null");
            return (Criteria) this;
        }

        public Criteria andSkillIsNotNull() {
            addCriterion("skill is not null");
            return (Criteria) this;
        }

        public Criteria andSkillEqualTo(String value) {
            addCriterion("skill =", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillNotEqualTo(String value) {
            addCriterion("skill <>", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillGreaterThan(String value) {
            addCriterion("skill >", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillGreaterThanOrEqualTo(String value) {
            addCriterion("skill >=", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillLessThan(String value) {
            addCriterion("skill <", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillLessThanOrEqualTo(String value) {
            addCriterion("skill <=", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillLike(String value) {
            addCriterion("skill like", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillNotLike(String value) {
            addCriterion("skill not like", value, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillIn(List<String> values) {
            addCriterion("skill in", values, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillNotIn(List<String> values) {
            addCriterion("skill not in", values, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillBetween(String value1, String value2) {
            addCriterion("skill between", value1, value2, "skill");
            return (Criteria) this;
        }

        public Criteria andSkillNotBetween(String value1, String value2) {
            addCriterion("skill not between", value1, value2, "skill");
            return (Criteria) this;
        }
        
			
        public Criteria andCvAttachIsNull() {
            addCriterion("cv_attach is null");
            return (Criteria) this;
        }

        public Criteria andCvAttachIsNotNull() {
            addCriterion("cv_attach is not null");
            return (Criteria) this;
        }

        public Criteria andCvAttachEqualTo(String value) {
            addCriterion("cv_attach =", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachNotEqualTo(String value) {
            addCriterion("cv_attach <>", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachGreaterThan(String value) {
            addCriterion("cv_attach >", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachGreaterThanOrEqualTo(String value) {
            addCriterion("cv_attach >=", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachLessThan(String value) {
            addCriterion("cv_attach <", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachLessThanOrEqualTo(String value) {
            addCriterion("cv_attach <=", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachLike(String value) {
            addCriterion("cv_attach like", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachNotLike(String value) {
            addCriterion("cv_attach not like", value, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachIn(List<String> values) {
            addCriterion("cv_attach in", values, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachNotIn(List<String> values) {
            addCriterion("cv_attach not in", values, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachBetween(String value1, String value2) {
            addCriterion("cv_attach between", value1, value2, "cvAttach");
            return (Criteria) this;
        }

        public Criteria andCvAttachNotBetween(String value1, String value2) {
            addCriterion("cv_attach not between", value1, value2, "cvAttach");
            return (Criteria) this;
        }
        
			
        public Criteria andSlocationIsNull() {
            addCriterion("slocation is null");
            return (Criteria) this;
        }

        public Criteria andSlocationIsNotNull() {
            addCriterion("slocation is not null");
            return (Criteria) this;
        }

        public Criteria andSlocationEqualTo(String value) {
            addCriterion("slocation =", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationNotEqualTo(String value) {
            addCriterion("slocation <>", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationGreaterThan(String value) {
            addCriterion("slocation >", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationGreaterThanOrEqualTo(String value) {
            addCriterion("slocation >=", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationLessThan(String value) {
            addCriterion("slocation <", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationLessThanOrEqualTo(String value) {
            addCriterion("slocation <=", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationLike(String value) {
            addCriterion("slocation like", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationNotLike(String value) {
            addCriterion("slocation not like", value, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationIn(List<String> values) {
            addCriterion("slocation in", values, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationNotIn(List<String> values) {
            addCriterion("slocation not in", values, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationBetween(String value1, String value2) {
            addCriterion("slocation between", value1, value2, "slocation");
            return (Criteria) this;
        }

        public Criteria andSlocationNotBetween(String value1, String value2) {
            addCriterion("slocation not between", value1, value2, "slocation");
            return (Criteria) this;
        }
        
			
        public Criteria andExpectSalaryIsNull() {
            addCriterion("expect_salary is null");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryIsNotNull() {
            addCriterion("expect_salary is not null");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryEqualTo(String value) {
            addCriterion("expect_salary =", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryNotEqualTo(String value) {
            addCriterion("expect_salary <>", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryGreaterThan(String value) {
            addCriterion("expect_salary >", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("expect_salary >=", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryLessThan(String value) {
            addCriterion("expect_salary <", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryLessThanOrEqualTo(String value) {
            addCriterion("expect_salary <=", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryLike(String value) {
            addCriterion("expect_salary like", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryNotLike(String value) {
            addCriterion("expect_salary not like", value, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryIn(List<String> values) {
            addCriterion("expect_salary in", values, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryNotIn(List<String> values) {
            addCriterion("expect_salary not in", values, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryBetween(String value1, String value2) {
            addCriterion("expect_salary between", value1, value2, "expectSalary");
            return (Criteria) this;
        }

        public Criteria andExpectSalaryNotBetween(String value1, String value2) {
            addCriterion("expect_salary not between", value1, value2, "expectSalary");
            return (Criteria) this;
        }
        
			
        public Criteria andJobObjectiveIsNull() {
            addCriterion("job_objective is null");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveIsNotNull() {
            addCriterion("job_objective is not null");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveEqualTo(String value) {
            addCriterion("job_objective =", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveNotEqualTo(String value) {
            addCriterion("job_objective <>", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveGreaterThan(String value) {
            addCriterion("job_objective >", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveGreaterThanOrEqualTo(String value) {
            addCriterion("job_objective >=", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveLessThan(String value) {
            addCriterion("job_objective <", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveLessThanOrEqualTo(String value) {
            addCriterion("job_objective <=", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveLike(String value) {
            addCriterion("job_objective like", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveNotLike(String value) {
            addCriterion("job_objective not like", value, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveIn(List<String> values) {
            addCriterion("job_objective in", values, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveNotIn(List<String> values) {
            addCriterion("job_objective not in", values, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveBetween(String value1, String value2) {
            addCriterion("job_objective between", value1, value2, "jobObjective");
            return (Criteria) this;
        }

        public Criteria andJobObjectiveNotBetween(String value1, String value2) {
            addCriterion("job_objective not between", value1, value2, "jobObjective");
            return (Criteria) this;
        }
        
			
        public Criteria andExpEduIsNull() {
            addCriterion("exp_edu is null");
            return (Criteria) this;
        }

        public Criteria andExpEduIsNotNull() {
            addCriterion("exp_edu is not null");
            return (Criteria) this;
        }

        public Criteria andExpEduEqualTo(String value) {
            addCriterion("exp_edu =", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduNotEqualTo(String value) {
            addCriterion("exp_edu <>", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduGreaterThan(String value) {
            addCriterion("exp_edu >", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduGreaterThanOrEqualTo(String value) {
            addCriterion("exp_edu >=", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduLessThan(String value) {
            addCriterion("exp_edu <", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduLessThanOrEqualTo(String value) {
            addCriterion("exp_edu <=", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduLike(String value) {
            addCriterion("exp_edu like", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduNotLike(String value) {
            addCriterion("exp_edu not like", value, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduIn(List<String> values) {
            addCriterion("exp_edu in", values, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduNotIn(List<String> values) {
            addCriterion("exp_edu not in", values, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduBetween(String value1, String value2) {
            addCriterion("exp_edu between", value1, value2, "expEdu");
            return (Criteria) this;
        }

        public Criteria andExpEduNotBetween(String value1, String value2) {
            addCriterion("exp_edu not between", value1, value2, "expEdu");
            return (Criteria) this;
        }
        
			
        public Criteria andInterestIsNull() {
            addCriterion("interest is null");
            return (Criteria) this;
        }

        public Criteria andInterestIsNotNull() {
            addCriterion("interest is not null");
            return (Criteria) this;
        }

        public Criteria andInterestEqualTo(String value) {
            addCriterion("interest =", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestNotEqualTo(String value) {
            addCriterion("interest <>", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestGreaterThan(String value) {
            addCriterion("interest >", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestGreaterThanOrEqualTo(String value) {
            addCriterion("interest >=", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestLessThan(String value) {
            addCriterion("interest <", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestLessThanOrEqualTo(String value) {
            addCriterion("interest <=", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestLike(String value) {
            addCriterion("interest like", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestNotLike(String value) {
            addCriterion("interest not like", value, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestIn(List<String> values) {
            addCriterion("interest in", values, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestNotIn(List<String> values) {
            addCriterion("interest not in", values, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestBetween(String value1, String value2) {
            addCriterion("interest between", value1, value2, "interest");
            return (Criteria) this;
        }

        public Criteria andInterestNotBetween(String value1, String value2) {
            addCriterion("interest not between", value1, value2, "interest");
            return (Criteria) this;
        }
        
			
        public Criteria andPrivacyIsNull() {
            addCriterion("privacy is null");
            return (Criteria) this;
        }

        public Criteria andPrivacyIsNotNull() {
            addCriterion("privacy is not null");
            return (Criteria) this;
        }

        public Criteria andPrivacyEqualTo(Integer value) {
            addCriterion("privacy =", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyNotEqualTo(Integer value) {
            addCriterion("privacy <>", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyGreaterThan(Integer value) {
            addCriterion("privacy >", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyGreaterThanOrEqualTo(Integer value) {
            addCriterion("privacy >=", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyLessThan(Integer value) {
            addCriterion("privacy <", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyLessThanOrEqualTo(Integer value) {
            addCriterion("privacy <=", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyLike(Integer value) {
            addCriterion("privacy like", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyNotLike(Integer value) {
            addCriterion("privacy not like", value, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyIn(List<Integer> values) {
            addCriterion("privacy in", values, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyNotIn(List<Integer> values) {
            addCriterion("privacy not in", values, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyBetween(Integer value1, Integer value2) {
            addCriterion("privacy between", value1, value2, "privacy");
            return (Criteria) this;
        }

        public Criteria andPrivacyNotBetween(Integer value1, Integer value2) {
            addCriterion("privacy not between", value1, value2, "privacy");
            return (Criteria) this;
        }
        
		
		 public Criteria andLikeQuery(StuCv record) {
		 	List<String> list= new ArrayList<String>();
		 	List<String> list2= new ArrayList<String>();
        	StringBuffer buffer=new StringBuffer();
        	
        				 if(record.getSid()!=null&&StrUtil.isNotEmpty(record.getSid().toString())) {
    			 list.add("ifnull(sid,'')");
    		 }
						 if(record.getCvid()!=null&&StrUtil.isNotEmpty(record.getCvid().toString())) {
    			 list.add("ifnull(cvid,'')");
    		 }
						 if(record.getPhoto()!=null&&StrUtil.isNotEmpty(record.getPhoto().toString())) {
    			 list.add("ifnull(photo,'')");
    		 }
						 if(record.getEducation()!=null&&StrUtil.isNotEmpty(record.getEducation().toString())) {
    			 list.add("ifnull(education,'')");
    		 }
						 if(record.getExpPrac()!=null&&StrUtil.isNotEmpty(record.getExpPrac().toString())) {
    			 list.add("ifnull(exp_prac,'')");
    		 }
						 if(record.getExpAward()!=null&&StrUtil.isNotEmpty(record.getExpAward().toString())) {
    			 list.add("ifnull(exp_award,'')");
    		 }
						 if(record.getGrade()!=null&&StrUtil.isNotEmpty(record.getGrade().toString())) {
    			 list.add("ifnull(grade,'')");
    		 }
						 if(record.getSkill()!=null&&StrUtil.isNotEmpty(record.getSkill().toString())) {
    			 list.add("ifnull(skill,'')");
    		 }
						 if(record.getCvAttach()!=null&&StrUtil.isNotEmpty(record.getCvAttach().toString())) {
    			 list.add("ifnull(cv_attach,'')");
    		 }
						 if(record.getSlocation()!=null&&StrUtil.isNotEmpty(record.getSlocation().toString())) {
    			 list.add("ifnull(slocation,'')");
    		 }
						 if(record.getExpectSalary()!=null&&StrUtil.isNotEmpty(record.getExpectSalary().toString())) {
    			 list.add("ifnull(expect_salary,'')");
    		 }
						 if(record.getJobObjective()!=null&&StrUtil.isNotEmpty(record.getJobObjective().toString())) {
    			 list.add("ifnull(job_objective,'')");
    		 }
						 if(record.getExpEdu()!=null&&StrUtil.isNotEmpty(record.getExpEdu().toString())) {
    			 list.add("ifnull(exp_edu,'')");
    		 }
						 if(record.getInterest()!=null&&StrUtil.isNotEmpty(record.getInterest().toString())) {
    			 list.add("ifnull(interest,'')");
    		 }
						 if(record.getPrivacy()!=null&&StrUtil.isNotEmpty(record.getPrivacy().toString())) {
    			 list.add("ifnull(privacy,'')");
    		 }
										 if(record.getSid()!=null&&StrUtil.isNotEmpty(record.getSid().toString())) {
        			list2.add("'%"+record.getSid()+"%'");
        		 }
							 if(record.getCvid()!=null&&StrUtil.isNotEmpty(record.getCvid().toString())) {
        			list2.add("'%"+record.getCvid()+"%'");
        		 }
							 if(record.getPhoto()!=null&&StrUtil.isNotEmpty(record.getPhoto().toString())) {
        			list2.add("'%"+record.getPhoto()+"%'");
        		 }
							 if(record.getEducation()!=null&&StrUtil.isNotEmpty(record.getEducation().toString())) {
        			list2.add("'%"+record.getEducation()+"%'");
        		 }
							 if(record.getExpPrac()!=null&&StrUtil.isNotEmpty(record.getExpPrac().toString())) {
        			list2.add("'%"+record.getExpPrac()+"%'");
        		 }
							 if(record.getExpAward()!=null&&StrUtil.isNotEmpty(record.getExpAward().toString())) {
        			list2.add("'%"+record.getExpAward()+"%'");
        		 }
							 if(record.getGrade()!=null&&StrUtil.isNotEmpty(record.getGrade().toString())) {
        			list2.add("'%"+record.getGrade()+"%'");
        		 }
							 if(record.getSkill()!=null&&StrUtil.isNotEmpty(record.getSkill().toString())) {
        			list2.add("'%"+record.getSkill()+"%'");
        		 }
							 if(record.getCvAttach()!=null&&StrUtil.isNotEmpty(record.getCvAttach().toString())) {
        			list2.add("'%"+record.getCvAttach()+"%'");
        		 }
							 if(record.getSlocation()!=null&&StrUtil.isNotEmpty(record.getSlocation().toString())) {
        			list2.add("'%"+record.getSlocation()+"%'");
        		 }
							 if(record.getExpectSalary()!=null&&StrUtil.isNotEmpty(record.getExpectSalary().toString())) {
        			list2.add("'%"+record.getExpectSalary()+"%'");
        		 }
							 if(record.getJobObjective()!=null&&StrUtil.isNotEmpty(record.getJobObjective().toString())) {
        			list2.add("'%"+record.getJobObjective()+"%'");
        		 }
							 if(record.getExpEdu()!=null&&StrUtil.isNotEmpty(record.getExpEdu().toString())) {
        			list2.add("'%"+record.getExpEdu()+"%'");
        		 }
							 if(record.getInterest()!=null&&StrUtil.isNotEmpty(record.getInterest().toString())) {
        			list2.add("'%"+record.getInterest()+"%'");
        		 }
							 if(record.getPrivacy()!=null&&StrUtil.isNotEmpty(record.getPrivacy().toString())) {
        			list2.add("'%"+record.getPrivacy()+"%'");
        		 }
			        	
        	buffer.append(" CONCAT(");
	        buffer.append(StrUtil.join("",list));
        	buffer.append(")");
        	buffer.append("like CONCAT(");
        	
        	
        	buffer.append(StrUtil.join("",list2));
        	
        	buffer.append(")");
        	if(!" CONCAT()like CONCAT()".equals(buffer.toString())) {
        		addCriterion(buffer.toString());
        	}
        	return (Criteria) this;
        }
        
}
	
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}